self.addEventListener('install', (事) => {
	事.waitUntil(caches.open('xdi8').then((自) => 自.addAll([
		'/xdi8/',
		'/xdi8/app.js',
		'/xdi8/util.js',
		'/xdi8/main.css',
		'/xdi8/data',
		'/xdi8/data/hanzi2xdhan.tsv',
		'/xdi8/data/hanzi2xdi8.tsv',
		'/xdi8/data/malisu2xdi8.tsv',
		'/xdi8/data/oldxdi8.tsv',
		'/xdi8/data/pua2xdi8.tsv',
		'/xdi8/data/template.tsv',
		'/xdi8/data/tidai2xdi8.tsv',
		'/xdi8/data/xdi82ar.tsv',
		'/xdi8/data/xdi82cyr.tsv',
		'/xdi8/data/xdi82emoji.tsv',
		'/xdi8/data/xdi82gudian.tsv',
		'/xdi8/data/xdi82hanxie.tsv',
		'/xdi8/data/xdi82hebrew.tsv',
		'/xdi8/data/xdi82ipa.tsv',
		'/xdi8/data/xdi82kana.tsv',
		'/xdi8/data/xdi82latin.tsv',
		'/xdi8/data/xdi82mangwen.tsv',
		'/xdi8/data/xdi82morse.tsv',
		'/xdi8/data/xdi82pejon.tsv',
		'/xdi8/data/xdi82pinyin.tsv',
		'/xdi8/data/xdi82tidai.tsv',
		'/xdi8/data/xdi82xiandai.tsv',
		'/xdi8/data/xdi82zhuyin.tsv',
		'/xdi8/data/zmhz2xdi8.tsv'
	])));
});

self.addEventListener('fetch', (事) => {
	事.respondWith(caches.match(事.request).then((自) => 自 || fetch(事.request)));
});

